Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(Calendar): add doneButtonShow, doneButtonDisabled props flags #7736

Merged

Conversation

EldarMuhamethanov
Copy link
Contributor

@EldarMuhamethanov EldarMuhamethanov commented Oct 10, 2024


  • Unit-тесты
  • e2e-тесты
  • Release notes

Описание

Необходимо для компонента Calendar добавить возможность скрыть кнопку done, а также возможность ее задизаблить

UPD

В API DateInput намерено не были добавлены doneButtonShow и doneButtonDisabled, так как по задумке кнопку скрывать имеет смысл, когда сам календарь обернут в другой компонент и кнопка принятия реализована по-другому. В DateInput данной возможности нет, поэтому doneButtonShow и doneButtonDisabled там не нужны

Release notes

Улучшения

  • Calendar:
    • Добавлено свойство doneButtonShow для скрытия кнопки "done"
    • Добавлено свойство doneButtonDisabled для блокирования кнопки "disabled"

@EldarMuhamethanov EldarMuhamethanov requested a review from a team as a code owner October 10, 2024 14:21
Copy link
Contributor

github-actions bot commented Oct 10, 2024

size-limit report 📦

Path Size
JS 383.27 KB (+0.06% 🔺)
JS (gzip) 122.62 KB (+0.06% 🔺)
JS (brotli) 101.55 KB (+0.03% 🔺)
JS import Div (tree shaking) 1.47 KB (0%)
CSS 342.26 KB (+0.02% 🔺)
CSS (gzip) 49.34 KB (+0.05% 🔺)
CSS (brotli) 39.93 KB (-0.04% 🔽)

Copy link

codesandbox-ci bot commented Oct 10, 2024

This pull request is automatically built and testable in CodeSandbox.

To see build info of the built libraries, click here or the icon next to each commit SHA.

Copy link
Contributor

github-actions bot commented Oct 10, 2024

e2e tests

⚠️ Some screenshots were failed. See Playwright Report.

Playwright Report

Copy link
Contributor

github-actions bot commented Oct 10, 2024

👀 Docs deployed

Commit 2110f86

Copy link

codecov bot commented Oct 10, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 95.34%. Comparing base (f198947) to head (2110f86).
Report is 5 commits behind head on master.

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #7736   +/-   ##
=======================================
  Coverage   95.34%   95.34%           
=======================================
  Files         377      377           
  Lines       11054    11059    +5     
  Branches     3673     3677    +4     
=======================================
+ Hits        10539    10544    +5     
  Misses        515      515           
Flag Coverage Δ
unittests 95.34% <100.00%> (+<0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Copy link
Contributor

@andrey-medvedev-vk andrey-medvedev-vk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍


Сначала думал нам другим именованием пропов, но похоже что лучше всего ты уже сдалал. Разве что можно было бы doneButtonHide вместо doneButtonShow, но это не стоит внимания.

# Conflicts:
#	packages/vkui/src/components/Calendar/__image_snapshots__/calendar-android-chromium-dark-1-snap.png
#	packages/vkui/src/components/Calendar/__image_snapshots__/calendar-android-chromium-light-1-snap.png
#	packages/vkui/src/components/Calendar/__image_snapshots__/calendar-ios-webkit-dark-1-snap.png
#	packages/vkui/src/components/Calendar/__image_snapshots__/calendar-ios-webkit-light-1-snap.png
#	packages/vkui/src/components/Calendar/__image_snapshots__/calendar-vkcom-chromium-dark-1-snap.png
#	packages/vkui/src/components/Calendar/__image_snapshots__/calendar-vkcom-chromium-light-1-snap.png
#	packages/vkui/src/components/Calendar/__image_snapshots__/calendar-vkcom-firefox-dark-1-snap.png
#	packages/vkui/src/components/Calendar/__image_snapshots__/calendar-vkcom-firefox-light-1-snap.png
#	packages/vkui/src/components/Calendar/__image_snapshots__/calendar-vkcom-webkit-dark-1-snap.png
#	packages/vkui/src/components/Calendar/__image_snapshots__/calendar-vkcom-webkit-light-1-snap.png
@EldarMuhamethanov EldarMuhamethanov added patch Автоматизация: PR продублируется в ветку последнего минорного релиза для выпуска патча v6 Автоматизация: PR продублируется в ветку v6 labels Oct 17, 2024
Copy link
Contributor

@andrey-medvedev-vk andrey-medvedev-vk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💅

@andrey-medvedev-vk
Copy link
Contributor

@EldarMuhamethanov А что думаешь по поводу рассуждений @Kritolan в #7733 (comment)

В этом PR мы игнорируем DateInput, а там и правда closeOnChange отключается когда enableTime включен.
Мы намеренно не даём это делать в DateInput?

Если подумать, то кнопка "Готово" затем и нужна, чтобы иметь возможность закрыть календарь. Если её намеренно прячут, то остаётся только закрытие по клику снаружи, как если бы closeOnChange было false у календаря без времени.

@EldarMuhamethanov
Copy link
Contributor Author

@EldarMuhamethanov А что думаешь по поводу рассуждений @Kritolan в #7733 (comment)

В этом PR мы игнорируем DateInput, а там и правда closeOnChange отключается когда enableTime включен. Мы намеренно не даём это делать в DateInput?

Если подумать, то кнопка "Готово" затем и нужна, чтобы иметь возможность закрыть календарь. Если её намеренно прячут, то остаётся только закрытие по клику снаружи, как если бы closeOnChange было false у календаря без времени.

Возможно, если кто-то хочет скрыть эту кнопку, значит он хочет сделать закрытие и применение по-другому. Возможно обернув календарь во что-то и добавив свою кнопку. Другое дело, такое вряд ли получится сделать в DateInput. Возможно в DateInput стоит убрать возможность скрытия этой кнопки

# Conflicts:
#	packages/vkui/src/components/Calendar/__image_snapshots__/calendar-android-chromium-dark-1-snap.png
#	packages/vkui/src/components/Calendar/__image_snapshots__/calendar-android-chromium-light-1-snap.png
#	packages/vkui/src/components/Calendar/__image_snapshots__/calendar-ios-webkit-dark-1-snap.png
#	packages/vkui/src/components/Calendar/__image_snapshots__/calendar-ios-webkit-light-1-snap.png
#	packages/vkui/src/components/Calendar/__image_snapshots__/calendar-vkcom-chromium-dark-1-snap.png
#	packages/vkui/src/components/Calendar/__image_snapshots__/calendar-vkcom-chromium-light-1-snap.png
#	packages/vkui/src/components/Calendar/__image_snapshots__/calendar-vkcom-firefox-dark-1-snap.png
#	packages/vkui/src/components/Calendar/__image_snapshots__/calendar-vkcom-firefox-light-1-snap.png
#	packages/vkui/src/components/Calendar/__image_snapshots__/calendar-vkcom-webkit-dark-1-snap.png
#	packages/vkui/src/components/Calendar/__image_snapshots__/calendar-vkcom-webkit-light-1-snap.png
Copy link
Contributor

@andrey-medvedev-vk andrey-medvedev-vk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💅

# Conflicts:
#	packages/vkui/src/components/CalendarTime/CalendarTime.tsx
@andrey-medvedev-vk andrey-medvedev-vk requested a review from a team November 5, 2024 11:55
@inomdzhon inomdzhon removed the patch Автоматизация: PR продублируется в ветку последнего минорного релиза для выпуска патча label Nov 5, 2024
@EldarMuhamethanov EldarMuhamethanov added the patch Автоматизация: PR продублируется в ветку последнего минорного релиза для выпуска патча label Nov 5, 2024
@EldarMuhamethanov EldarMuhamethanov merged commit 5775640 into master Nov 5, 2024
28 checks passed
@EldarMuhamethanov EldarMuhamethanov deleted the e.muhamethanov/7733/calendar-hide-done-button branch November 5, 2024 13:47
@vkcom-publisher
Copy link
Contributor

❌ Patch

Не удалось автоматически применить исправление на ветке 7.0-stable.

Дальнейшие действия выполняют контрибьютеры из группы @VKCOM/vkui-core

Чтобы изменение попало в ветку 7.0-stable, выполните следующие действия:

  1. Создайте новую ветку от 7.0-stable и примените изменения используя cherry-pick
git stash # опционально
git fetch origin 7.0-stable
git checkout -b patch/pr7736 origin/7.0-stable

git cherry-pick --no-commit 5775640781504371c739f6c370bdbc903ebf0c86
git checkout HEAD **/__image_snapshots__/*.png
git diff --quiet HEAD || git commit --no-verify --no-edit
  1. Исправьте конфликты, следуя инструкциям из терминала
  2. Отправьте ветку на GitHub и создайте новый PR с веткой 7.0-stable (установка лейбла не требуется!)
git push --set-upstream origin patch/pr7736
gh pr create --base 7.0-stable --title "patch: pr7736" --body "- patch #7736"

@vkcom-publisher
Copy link
Contributor

❌ Patch

Не удалось автоматически применить исправление на ветке v6.

Дальнейшие действия выполняют контрибьютеры из группы @VKCOM/vkui-core

Чтобы изменение попало в ветку v6, выполните следующие действия:

  1. Создайте новую ветку от v6 и примените изменения используя cherry-pick
git stash # опционально
git fetch origin v6
git checkout -b patch/pr7736 origin/v6

git cherry-pick --no-commit 5775640781504371c739f6c370bdbc903ebf0c86
git checkout HEAD **/__image_snapshots__/*.png
git diff --quiet HEAD || git commit --no-verify --no-edit
  1. Исправьте конфликты, следуя инструкциям из терминала
  2. Отправьте ветку на GitHub и создайте новый PR с веткой v6 (установка лейбла не требуется!)
git push --set-upstream origin patch/pr7736
gh pr create --base v6 --title "patch: pr7736" --body "- patch #7736"

EldarMuhamethanov added a commit that referenced this pull request Nov 5, 2024
…7736)

* feat(Calendar): add doneButtonShow, doneButtonDisabled props flags

* test(Calendar): add screenshots

* test(Calendar): update screenshots

* test(Calendar): update screenshots

* fix(CalendarTime): fix formatting

(cherry picked from commit 5775640)
EldarMuhamethanov added a commit that referenced this pull request Nov 5, 2024
…7736)

* feat(Calendar): add doneButtonShow, doneButtonDisabled props flags

* test(Calendar): add screenshots

* test(Calendar): update screenshots

* test(Calendar): update screenshots

* fix(CalendarTime): fix formatting

(cherry picked from commit 5775640)
This was referenced Nov 5, 2024
EldarMuhamethanov added a commit that referenced this pull request Nov 5, 2024
…7736)

* feat(Calendar): add doneButtonShow, doneButtonDisabled props flags

* test(Calendar): add screenshots

* test(Calendar): update screenshots

* test(Calendar): update screenshots

* fix(CalendarTime): fix formatting

(cherry picked from commit 5775640)
@EldarMuhamethanov EldarMuhamethanov mentioned this pull request Nov 5, 2024
EldarMuhamethanov added a commit that referenced this pull request Nov 6, 2024
* feat(Calendar): add doneButtonShow, doneButtonDisabled props flags (#7736)

* feat(Calendar): add doneButtonShow, doneButtonDisabled props flags

* test(Calendar): add screenshots

* test(Calendar): update screenshots

* test(Calendar): update screenshots

* fix(CalendarTime): fix formatting

(cherry picked from commit 5775640)

* fix(CalendarTime): run prettier
EldarMuhamethanov added a commit that referenced this pull request Nov 6, 2024
…7736) (#7902)

* feat(Calendar): add doneButtonShow, doneButtonDisabled props flags

* test(Calendar): add screenshots

* test(Calendar): update screenshots

* test(Calendar): update screenshots

* fix(CalendarTime): fix formatting

(cherry picked from commit 5775640)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
patch Автоматизация: PR продублируется в ветку последнего минорного релиза для выпуска патча v6 Автоматизация: PR продублируется в ветку v6
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Feature][Calendar]: Добавить возможность скрытия кнопки Done
4 participants